WIP [don't squash] Manopt v0.6#605
Draft
mateuszbaran wants to merge 5 commits into
Draft
Conversation
* Sketch a fix for show/repr * delete debug info * A bit of code structuring and test the new scheme with GradientDescentState. * introduce multiline and refactor all show and status_summary methods. --------- Co-authored-by: Ronny Bergmann <git@ronnybergmann.net>
* Remove the JuMPExt * update changelog.
* initial code for GCP computation * formatting * expand a little * add a few more methods * Byrd's way of handling non-positive-definite (s, y) pairs in limited memory quasi-Newton * start testing GCP * A few more tests * fix "typos" * box tests in a separate file * start integration of GCP into quasi_Newton * integrate GCPFinder into direction update (why doesn't this work right?) * return d from fill_rho_i! * fix rho update * first successful run * address review, fix bug * a little bit of docs * fix extref again? * StopWhenRelativeAPosterioriChangeCostLessOrEqual * improve consistency of stepsize limits * some fixes and tests around max_stepsize, bound_direction_tweak! and hess_val_eb * fix Base.show for StopWhenRelativeAPosterioriChangeCostLessOrEqual * more tests and change one name * formatting * more testing * improve coverage * improve coverage a bit more * improve coverage; circumvent a Julia documenter bug * improve coverage * formatting * fix a bug * add max_stepsize function for ProbabilitySimplex and corresponding tests * improve docs * Apply suggestions from code review Co-authored-by: Ronny Bergmann <git@ronnybergmann.net> * address some review comments * address more comments * one more comment * fix docs * fixing extref * don't specify arch * expand docs * address more review comments * update Project.toml * add some details and fix some links * forgot an inversion * optimize segment search by not requiring d_old; fix one test to have consistent, reasonable input * we only need d_z/Y_tmp in the generic updater, not the limited memory one * adapt to glossaries * improve coverage * streamline GCP direction search a bit * rename * refactor segment updater to be more minimal (common logic went to the GCP subsolver) * more cleanup in GCP * rearrange arguments to a more logical order * CMA ES should probably use passed RNG for the initial point? * move one temporary to the segment propagator that needs it * improve coverage * Add test for hitting multiple bounds in Generalized Cauchy Point Finder * improve naming * Remove IJulia from the tutorials project. Maybe that helps. * rename t to stepsize in function names * fix convergence indication for StopWhenRelativeAPosterioriCostChangeLessOrEqual * rename GCP to GCD * GCD in tutorial * set seed to try avoiding random errors * add missing page * fix convergence indication of StopWhenChangeLess * Update docs/src/solvers/generalized_cauchy_direction_subsolver.md Co-authored-by: Ronny Bergmann <git@ronnybergmann.net> * rename a few things, expand docs * add missing docs entry * improve names * remove warning that isn't necessary * formatting * improve numerical robustness * also detect nondescent direction at inner product 0 * Wrong eps was taken there * fix test * Update test/plans/test_stopping_criteria.jl Co-authored-by: Ronny Bergmann <git@ronnybergmann.net> * support stepsize limiting in LineSearchesStepsize * fix + test * skip non-coverable line * fix a few issues with quasi-Newton * improve coverage * allow for larger max stepsizes in post-GCD linesearch when away from boundaries * Add Hager-Zhang 2006 linesearch * remove initial stepsize parameters; add some docs * fix edge case issues of HZ line search; expand docs on GCD; use line search restart in QN; improve coverage; respect stepsize limit in HagerZhangInitialGuess * test one more edge case * test initialize_stepsize! for HZ * improve coverage * optimize quasi_Newton step * more docs for HZ, a new test, removed commented out line * use provided gradient for dphi_0 in HZ * avoid cost reevaluation for stopping criteria in certain cases * avoid tangent allocation * optimize a few things * improve coverage * streamline set_stepsize_bound! logic * generalize to Hyperrectangle at any position * cleanup * fix ambiguity, improve test * address review regarding HZ stepsize * expand changelog, stepsize initialization * Update src/plans/stepsize/stepsize.jl Co-authored-by: Ronny Bergmann <git@ronnybergmann.net> * Make GCD more type stable * Add simple directional stepsize limiting for completeness * fix docs * add an early termination condition for HZ linesearch; add show methods to two types * test new printing methods * improve coverage * rename Finder to Subsolver, don't store manifold inside * Apply suggestions from code review Co-authored-by: Ronny Bergmann <git@ronnybergmann.net> * address one more issue * update docs * address two more review comments (Github doesn't seem to be able to apply those suggestions from the browser interface) * a bit more comments, a bit more UTF, a bit better name for an internal function * Handle decorators in `get_cost` * fix a bug noticed while working on RLM * Remove and accidentially duplicate method definition. * adapt one new StoppingCriterion to the new show/repr/status_summary style and fix one further bug. * add status summary to QuasiNewtonLimitedMemoryBoxDirectionUpdate * Better support for custom point types in conjugate_gradient_descent (#596) * Bump crate-ci/typos from 1.45.0 to 1.45.1 (#597) Bumps [crate-ci/typos](https://github.com/crate-ci/typos) from 1.45.0 to 1.45.1. - [Release notes](https://github.com/crate-ci/typos/releases) - [Changelog](https://github.com/crate-ci/typos/blob/master/CHANGELOG.md) - [Commits](crate-ci/typos@v1.45.0...v1.45.1) --- updated-dependencies: - dependency-name: crate-ci/typos dependency-version: 1.45.1 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump julia-actions/setup-julia from 2 to 3 (#598) * Bump julia-actions/setup-julia from 2 to 3 Bumps [julia-actions/setup-julia](https://github.com/julia-actions/setup-julia) from 2 to 3. - [Release notes](https://github.com/julia-actions/setup-julia/releases) - [Commits](julia-actions/setup-julia@v2...v3) --- updated-dependencies: - dependency-name: julia-actions/setup-julia dependency-version: '3' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> * remove arch keyword since by now they all should run on 64 bit and it was too restructive for mac os --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Ronny Bergmann <git@ronnybergmann.net> * introduce a stopped_at function for solver states. (#599) * introduce a stopped_at function for solver states. * Add stopped_at to the docs. * Add the AI section to the initial TOC. * a bit of code formatting and one test. * Fix a test. * Increase GH Action dependabot to only update typos on minor/major and not on patch level (#602) * Fix some issues with CG and certain coefficient rules when using restart (#604) * refactor CGRule * Fix some issues with CG + HZ * provide a proper test + formatting * fix CG test * Refactor CG rules. * Fix 2 cases where we implicitly relied on storage being updated in case it was not filled and now fill it explicitly. * bump version. --------- Co-authored-by: Ronny Bergmann <git@ronnybergmann.net> * Unify REPL print and add a test. * unify tests. * Improve code cov. * Update ext/ManoptManifoldsExt/manifold_functions.jl Co-authored-by: Patryk Przybysz <PatrykPrzybysz.tl@interia.pl> * add citation of the preprint * add bibliography section * Add Patryk to the about. * Fix a typo. * Fix a typo. --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: Ronny Bergmann <git@ronnybergmann.net> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Patryk Przybysz <PatrykPrzybysz.tl@interia.pl>
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #605 +/- ##
===========================================
Coverage 100.00% 100.00%
===========================================
Files 91 91
Lines 10052 11631 +1579
===========================================
+ Hits 10052 11631 +1579 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
* prepare removal of the asymptote exports. * Fix doc links and grammar.
This was referenced May 23, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Contains:
showrework (Properly overload show #569 )